package main

import (
	"fmt"
)

// 定义结构体
type user struct {
	name     string
	password string
}

// 结构体方法，就是在普通方法前面加上一个带有结构体类型的
// 这是不带指针的，那么这实际是一个拷贝，不对结构体进行修改
func (u user) checkPassword(password string) bool {
	return u.password == password

}

// 这是带指针的，可以对结构体进行修改
func (u *user) resetPassword(password string) {
	u.password = password

}

func main() {
	a := user{name: "wang", password: "1024"}
	a.resetPassword("2048")
	fmt.Println(a.checkPassword("2048"))
}
